package com.example.java.ai.langchain4j.tools;

import dev.langchain4j.agent.tool.P;
import dev.langchain4j.agent.tool.Tool;
import dev.langchain4j.agent.tool.ToolMemoryId;
import org.springframework.stereotype.Component;

@Component
public class CalclatorTools {

    @Tool(name = "加法运算", value = "将两个参数a和b相加并返回运算结果")
    double sum(
            @ToolMemoryId int memoryId,
            @P(value = "加数1", required = true) double a,
            @P(value = "加数2", required = true) double b) {
        System.out.println("加法:" + memoryId + "," + a + "," + b);
        return a + b;
    }


    @Tool(name = "平方根运算")
    double square(@ToolMemoryId int memoryId, double a) {

        System.out.println("求根:" + memoryId + "," + a);
        return Math.sqrt(a);
    }
}
